Jak zignorować niektóre pliki w Git

Mam repozytorium z plikiem, Hello.java. Podczas kompilacji generowany jest dodatkowy plik Hello.class.

Utworzyłem wpis dla Hello.class w pliku .gitignore. Jednak plik nadal wydaje się być śledzony.

Jak sprawić, by Git zignorował Hello.class?

 798
Author: Peter Mortensen, 2010-11-29

22 answers

Problem polega na tym, że .gitignore ignoruje tylko pliki, które nie były wcześniej śledzone(przez git add). Uruchom git reset name_of_file, aby odłączyć plik i zachować go. Jeśli chcesz również usunąć podany Plik z repozytorium (po naciśnięciu), użyj git rm --cached name_of_file.

 877
Author: Ondrej Slinták,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-08-04 20:38:34

Jak ignorować nowe pliki

globalnie

Dodaj ścieżki do plików, które chcesz zignorować do pliku .gitignore (i zatwierdź je). Te wpisy plików będą miały również zastosowanie do innych osób sprawdzających repozytorium.

lokalnie

Dodaj ścieżkę (- y) do pliku (- ów), które chcesz zignorować do pliku .git/info/exclude. Te wpisy plików będą miały zastosowanie tylko do lokalnej kopii roboczej.

Jak ignorować zmienione pliki (tymczasowo)

W celu zignorowania zmienionych plików na wymienione jako zmodyfikowane, możesz użyć następującego polecenia git:

git update-index --assume-unchanged <file>

Aby przywrócić tę ignorancję użyj następującego polecenia:

git update-index --no-assume-unchanged <file>
 247
Author: Xman Classical,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-11-20 13:30:20

Dodaj następujący wiersz do .gitignore: {]}

/Hello.class

To wyklucza Hello.zajęcia od git. Jeśli już ją zatwierdziłeś, uruchom następujące polecenie:

git rm Hello.class

Jeśli chcesz wykluczyć wszystkie pliki klas z git, dodaj następującą linię do .gitignore: {]}

*.class
 157
Author: Armand,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-11-29 22:24:21

1) Utwórz plik .gitignore. Aby to zrobić, wystarczy utworzyć plik .txt I zmienić rozszerzenie w następujący sposób:

Tutaj wpisz opis obrazka

Następnie musisz zmienić nazwę, pisząc następującą linię w oknie cmd:

 rename git.txt .gitignore

Gdzie git.txt to nazwa pliku, który właśnie utworzyłeś.

Następnie możesz otworzyć plik i zapisać wszystkie pliki, których nie chcesz dodawać do repozytorium. Na przykład mój wygląda tak:

#OS junk files
[Tt]humbs.db
*.DS_Store

#Visual Studio files
*.[Oo]bj
*.user
*.aps
*.pch
*.vspscc
*.vssscc
*_i.c
*_p.c
*.ncb
*.suo
*.tlb
*.tlh
*.bak
*.[Cc]ache
*.ilk
*.log
*.lib
*.sbr
*.sdf
*.pyc
*.xml
ipch/
obj/
[Bb]in
[Dd]ebug*/
[Rr]elease*/
Ankh.NoLoad

#Tooling
_ReSharper*/
*.resharper
[Tt]est[Rr]esult*

#Project files
[Bb]uild/

#Subversion files
.svn

# Office Temp Files
~$*

Gdy już to masz, musisz dodać go do swojego Repozytorium Git. Musisz zapisać plik, w którym znajduje się Twoje repozytorium.

Następnie w Git Bash musisz napisać następujący wiersz:

git config --global core.excludesfile ~/.gitignore_global

Jeśli repozytorium już istnieje, musisz wykonać następujące czynności:

  1. git rm -r --cached .
  2. git add .
  3. git commit -m ".gitignore is now working"

Jeśli Krok 2 nie zadziała, powinieneś napisać całą trasę plików, które chcesz dodać.

 117
Author: SomeAnonymousPerson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-08-04 22:04:14

Ignorować:

git update-index --assume-unchanged <path/to/file>

Aby cofnąć ignorowanie:

git update-index --no-assume-unchanged <path/to/file>
 65
Author: avj,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-11-11 06:06:07

Możesz użyć poniższych metod do ignorowania / nie-ignorowania zmian w śledzonych plikach.

  1. za ignorowanie: git update-index --assume-unchanged <file>
  2. do przywracania ignorowanych plików: git update-index --no-assume-unchanged <file>
 49
Author: kapillohakare,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-06-08 18:39:53

Utwórz .gitignore w katalogu gdzie .git jest. Możesz wyświetlać w nim pliki oddzielone znakiem nowego wiersza. Możesz również użyć symboli wieloznacznych:

*.o
.*.swp
 22
Author: terminus,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-11-19 12:14:29

Z oficjalnej strony GitHub:

Jeśli masz już sprawdzony plik i chcesz go zignorować, Git nie zignoruje tego pliku, jeśli dodasz regułę później. W takich przypadkach należy najpierw usunąć śledzenie pliku, uruchamiając następujące polecenie w Terminalu:

git rm --cached FILENAME

Lub

git rm --cached .
 16
Author: Mile Mijatović,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-08-04 22:11:52

Powinieneś napisać coś w stylu

*.class

Do pliku .gitignore.

 12
Author: KingCrunch,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-11-29 22:14:57

Dodaj pliki, które chcesz zignorować do pliku .gitignore:

*.klasa

*.projekty

*.prefs

*.projekt

 7
Author: Chinmoy,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-08-04 22:10:39
    Idź do .plik gitignore i dodaj wpis dla plików, które chcesz zignorować
  1. Run git rm -r --cached .
  2. teraz biegnij git add .
 7
Author: Rahul Garg,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-05-10 12:10:25

Tworząc .plik gitignore. Szczegóły znajdziesz tutaj: Git Book-ignorowanie Plików

Sprawdź też to: Jak sprawić, by Git ignorował Pliki bez użycia .gitignore?

 5
Author: yasouser,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:02:59

Jeśli już zatwierdziłeś plik i próbujesz go zignorować, dodając go do pliku .gitignore, Git go nie zignoruje. W tym celu musisz najpierw wykonać poniższe czynności:

git rm --cached FILENAME

Jeśli rozpoczynasz nowy projekt i chcesz dodać kilka plików do Git ignore, wykonaj poniższe kroki, aby utworzyć plik Git ignore:

  1. przejdź do repozytorium Git.
  2. wpisz " dotknij .gitignore", który utworzy plik .gitignore.
 5
Author: Savyasachi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-08-04 22:16:46

Możesz również użyć .gitattributes (zamiast .gitignore), aby wykluczyć całe typy plików. Plik jest dość oczywisty, ale wklejam zawartość tutaj w celach informacyjnych. Zwróć uwagę na ostatnią linię (*.Klasa binarna):

# Denote all files that are truly binary and should not be modified.
*.png binary
*.jpg binary
*.gif binary
*.ico binary
*.mo binary
*.pdf binary
*.phar binary
*.class binary
 3
Author: David Niki,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-08-04 22:08:22

Dodaj następujący wiersz do .git / info/exclude:
Witam.klasa

 2
Author: Dado,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-06-15 10:19:45

Miałem podobny problem z plikiem " dump.rdb".
Próbowałem dodać ten plik na różne sposoby .plik gitignore, ale działał tylko w jeden sposób.

Dodaj nazwę pliku na końcu .plik gitignore

Uwaga: dodanie pliku gdziekolwiek indziej nie zadziałało.

Na przykład patrz: https://gitlab.com/gitlab-org/gitlab-ce/raw/b3ad3f202478dd88a3cfe4461703bc3df1019f90/.gitignore

 2
Author: Manohar Reddy Poreddy,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-09-17 03:35:46

Próbowałem tego -

  1. Lista plików, które chcemy zignorować

git status .idea/xyz.xml .idea/pqr.iml Output .DS_Store

  1. Skopiuj zawartość kroku # 1 i dodaj ją do .plik gitignore.

echo " .idea/xyz.xml .idea/pqr.iml Output .DS_Store" >> .gitignore

  1. Validate

git status .gitignore

Podobnie możemy dodać katalog i wszystkie jego podkatalogi / pliki, które chcemy zignorować w git status używając directoryname/* i wykonałem to polecenie z katalogu src.

 2
Author: VIPIN KUMAR,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-03-09 18:33:00

Ta strona może być przydatna i oszczędza czas podczas pracy z .gitignore.

Generuje automatycznie .pliki gitignore dla różnych IDE i systemów operacyjnych z określonymi plikami / folderami, których zazwyczaj nie chcesz pobierać do repozytorium Git (na przykład foldery i pliki konfiguracyjne specyficzne dla IDE).

 1
Author: Jaime Caffarel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-08-04 22:10:02

Najpierw Utwórz .plik gitignore, w którym musimy przechowywać nazwy plików i katalogów, które mają być ignorowane. Aby zignorować katalog;

name_of_directory/

Aby zignorować plik;

name_of_file

Nie musimy podawać pełnej ścieżki pliku lub katalogu, który ma być ignorowany, musimy tylko podać jego nazwę.

Jeśli chcesz zignorować wszystkie pliki z tym samym rozszerzeniem;

*.pyc  #will ignore all files with pyc extention
 1
Author: Irfan wani,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-10-30 04:34:24

Próbowałem --assume-unchanged i również .gitignore, ale żaden nie działał dobrze. Utrudniają przełączanie gałęzi i scalanie zmian z innych. To jest moje rozwiązanie:

Kiedy zatwierdzam , ręcznie usuwam pliki z listy zmian

Zanim ja wyciągnę , ja schowam zmienione pliki. A po wyciągnięciu robię stash pop .

  1. git stash
  2. git pull
  3. git stash pop

Krok 3 czasami spowoduje połączenie i może spowodować konflikt, który trzeba rozwiązać, co jest dobrą rzeczą.

To pozwala mi zachować lokalne zmiany, które nie są udostępniane innym członkom zespołu.

 0
Author: John Henckel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-07-05 19:17:49

Dla skompilowanego kodu. po prostu napisz

.class or .o
 0
Author: vedant mehta,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-07-08 17:55:32
git reset filename
git rm --cached filename

Następnie dodaj plik, który chcesz zignorować,

Następnie zatwierdź i wypchnij do repozytorium

 0
Author: Omar Abusabha,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-08-03 06:32:30